'use strict';
/**
 * author：小小游 --- allen
 * date：2018.02.08
 * lastUpdateDate：2018.02.08
 * description：通过实例巩固变量解构赋值
 */
/**
 * 我们知道数组是有序的，就是有顺序的意思
 * 相反的，对象是无序的，就是没有顺序的意思
 * 下面看个例子瞬间就明白了
 */
function testFn ([a = 12, b = 15, c = 28] = [], { x = 'aaa', y = 'bbb', z = 'ccc' } = {}) {
    // 先返回数组，测试什么是有顺序的意思
    return [a, b, c, x, y, z];
}
/**
 * 我们来看看结果：
 * a  b  c  x       y      z
 * 28 15 12 'bbb' 'ccc'  'aaa'
 * 这种完全乱套了，所以如果在函数内部return数组格式出来的是有序的，
 * 这个顺序在调用返回的时候一定要保证一一对应，不然会出大事
 */
let [a, b, c, x, y, z] = testFn ();
// result：
console.log(a, b, c, x, y, z);
